<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>右键菜单展示</title>
<!--<style>
body{ margin:0; padding:0;font:12px/16px Verdana, Helvetica, Arial, sans-serif;}
</style>-->
<link rel="stylesheet" href="/Public/Css/demo.Default.css" type="text/css" />
<script language="javascript" src="http://api.amap.com/webapi/init?v=1.1"></script>
<script language="javascript">
var mapObj,tool,view,scale;
var info_lnglat;
function mapInit(){
	mapObj = new AMap.Map("map");
	mapObj.plugin(["AMap.ToolBar","AMap.OverView,AMap.Scale"],function(){
		//加载工具条
		tool = new AMap.ToolBar({
			direction:false,
			ruler:false
			//autoPosition:false//禁止自动定位
		});
		mapObj.addControl(tool);
		//加载鹰眼
		view = new AMap.OverView({visible:false});
		mapObj.addControl(view);
		//加载比例尺
		scale = new AMap.Scale();
		mapObj.addControl(scale);
	});

	//右键菜单
	contextmenu = new AMap.ContextMenu();
	contextmenu.addItem("AutoNavi",function(){
		window.open("http://www.autonavi.com");	
	},2);
	contextmenu.addItem("Amap",function(){
		window.open("http://www.amap.com");	
	},1);
	contextmenu.addItem("Open InfoWindow",function(e){
                //alert(e.lnglat.toString());
                //contextmenu.close();
                //alert(e.toSource());
                //alert("hello,world");
                openInfo();
	},0);
	
	
	mapObj.bind(mapObj,"rightclick",function(e){
                //alert(e.lnglat.toString());
                info_lnglat = e.lnglat;
		contextmenu.open(mapObj,e.lnglat);
	});


}

    function openInfo(){
        var info = [];

        info.push("高德软件 : " + info_lnglat.toString());
        info.push("电话 : 010-84107000   邮编 : 100102");
        info.push("地址 : 北京市望京阜通东大街方恒国际中心A座16层</div></div>");

        inforWindow = new AMap.InfoWindow({
            content:info.join("<br/>")
        });

        inforWindow.open(mapObj,info_lnglat);
    }

//定义事件回调函数

var fn = function(e){

document.getElementById("c").innerHTML = "鼠标当前位置为："+e.lnglat.lng+","+e.lnglat.lat;

};

//事件绑定的方法

function bind(){

//第一个参数，地图对象或覆盖物对象

//第二个参数，事件类型

//第三个参数，事件被触发时需要执行的回调函数

mapObj.bind(mapObj,"mousemove",fn);

document.getElementById("c").innerHTML = "绑定成功，鼠标移动到地图上试试吧?";

}

function unbind(){

//解绑时，回调函数要一致，否则不能解除绑定

mapObj.unbind(mapObj,"mousemove",fn);

document.getElementById("c").innerHTML = "鼠标再移动到地图上试试吧?";

}

function geocodeSearch(){
        var xy=document.getElementById("lnglat").value;
        if(xy==""){
            return;
        }else{
            var coor=xy.split(",");
            var lnglatXY=new AMap.LngLat(coor[0],coor[1])
            var GeocoderOption = {
                range:3000,//范围
                crossnum:2,//道路交叉口数
                roadnum :3,//路线记录数
                poinum:2//POI点数
            };
        var geo = new AMap.Geocoder(GeocoderOption);
        geo.regeocode(lnglatXY,poiToAddressSearch_CallBack);
        addMarker(lnglatXY);
        }
    }
    function addMarker(lnglat){
        var marker=new AMap.Marker(
                {
                        id:"marker",
                    icon:"http://api.amap.com/webapi/static/Images/0.png",
                        position:lnglat,

                }
        );
        mapObj.addOverlays(marker);
         mapObj.setCenter(lnglat);
       }

    function poiToAddressSearch_CallBack(data){
        var resultStr="";
        if(data.status =="E0")
        {
            for(var i=0;i<data.list.length;i++){
                resultStr += "省："+data.list[i].province.name+"<br />市："+data.list[i].city.name+"<br />区："+data.list[i].district.name+"</span>";

                    for(var j=0;j<data.list[i].roadlist.length;j++){
                        resultStr+="<br />道路："+data.list[i].roadlist[j].name+"&nbsp;&nbsp;<br />距离："+data.list[i].roadlist[j].distance+"<br />";
                    }
                    for (var j=0; j< data.list[i].poilist.length; j++) {
                        resultStr += "<br />名称："+data.list[i].poilist[j].name+"<br />地址："+data.list[i].poilist[j].address+"<br />类型："+data.list[i].poilist[j].type+"<br />距离："+data.list[i].poilist[j].distance+"<br />经度："+data.list[i].poilist[j].x+"<br />纬度："+data.list[i].poilist[j].y+"<br />";
                    }
            }
        }
        else if(data.status =="E1")
        {
             resultStr = "未查找到任何结果!<br />建议：<br />1.请确保所有字词拼写正确。<br />2.尝试不同的关键字。<br />3.尝试更宽泛的关键字。";
        }
        else
        {
             resultStr= "错误信息："+data.state+"请对照API Server v2.0.0 简明提示码对照表查找错误类型";
        }
        document.getElementById("result").innerHTML = resultStr;

    }




</script>
</head>
<body onLoad="mapInit()">
<div id="map" style="width:659px;height:400px;border:#F6F6F6 solid 1px;"></div>
注：在地图上点击右键试试？
</body>
</html>
